[INFO] cloning repository https://github.com/tungbach1990/rust-fastapi
[INFO] running `Command { std: "git" "-c" "credential.helper=" "-c" "credential.helper=/workspace/cargo-home/bin/git-credential-null" "clone" "--bare" "https://github.com/tungbach1990/rust-fastapi" "/workspace/cache/git-repos/https%3A%2F%2Fgithub.com%2Ftungbach1990%2Frust-fastapi", kill_on_drop: false }`
[INFO] [stderr] Cloning into bare repository '/workspace/cache/git-repos/https%3A%2F%2Fgithub.com%2Ftungbach1990%2Frust-fastapi'...
[INFO] running `Command { std: "git" "rev-parse" "HEAD", kill_on_drop: false }`
[INFO] [stdout] 22b9d239bd11d118ad1bf59c8a6e3113968d2f73
[INFO] fixing tungbach1990/rust-fastapi against try#622891a4e29178280638a6b63a8908bde2c0c854+cargoflags=-Zfix-edition=end=2015,2024 for pr-157817-2
[INFO] running `Command { std: "git" "clone" "/workspace/cache/git-repos/https%3A%2F%2Fgithub.com%2Ftungbach1990%2Frust-fastapi" "/workspace/builds/worker-6-tc2/source", kill_on_drop: false }`
[INFO] [stderr] Cloning into '/workspace/builds/worker-6-tc2/source'...
[INFO] [stderr] done.
[INFO] started tweaking git repo https://github.com/tungbach1990/rust-fastapi
[INFO] finished tweaking git repo https://github.com/tungbach1990/rust-fastapi
[INFO] tweaked toml for git repo https://github.com/tungbach1990/rust-fastapi written to /workspace/builds/worker-6-tc2/source/Cargo.toml
[INFO] validating manifest of git repo https://github.com/tungbach1990/rust-fastapi on toolchain 622891a4e29178280638a6b63a8908bde2c0c854
[INFO] running `Command { std: CARGO_HOME="/workspace/cargo-home" RUSTUP_HOME="/workspace/rustup-home" "/workspace/cargo-home/bin/cargo" "+622891a4e29178280638a6b63a8908bde2c0c854" "metadata" "--manifest-path" "Cargo.toml" "--no-deps", kill_on_drop: false }`
[INFO] crate git repo https://github.com/tungbach1990/rust-fastapi already has a lockfile, it will not be regenerated
[INFO] running `Command { std: CARGO_HOME="/workspace/cargo-home" RUSTUP_HOME="/workspace/rustup-home" "/workspace/cargo-home/bin/cargo" "+622891a4e29178280638a6b63a8908bde2c0c854" "fetch" "--manifest-path" "Cargo.toml", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-6-tc2/source:/opt/rustwide/workdir:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-6-tc2/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/cargo-home:/opt/rustwide/cargo-home:ro,Z" "-v" "/var/lib/crater-agent-workspace/rustup-home:/opt/rustwide/rustup-home:ro,Z" "-m" "1610612736" "--network" "none" "ghcr.io/rust-lang/crates-build-env/linux@sha256:3a6becf2bc8dde7f3fa57ede90e4f284e72d296796fc446bbb1e2c7cc0530151" "sleep" "infinity", kill_on_drop: false }`
[INFO] [stdout] 0eca6cc176933cd33cc53c95d942a278fba48e7442adb9e7a1917be42bbf6968
[INFO] running `Command { std: "docker" "start" "0eca6cc176933cd33cc53c95d942a278fba48e7442adb9e7a1917be42bbf6968", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "exec" "-e" "SOURCE_DIR=/opt/rustwide/workdir" "-e" "CARGO_HOME=/opt/rustwide/cargo-home" "-e" "RUSTUP_HOME=/opt/rustwide/rustup-home" "-e" "CARGO_TARGET_DIR=/opt/rustwide/target" "-w" "/opt/rustwide/workdir" "--user" "0:0" "0eca6cc176933cd33cc53c95d942a278fba48e7442adb9e7a1917be42bbf6968" "/opt/rustwide/cargo-home/bin/cargo" "+622891a4e29178280638a6b63a8908bde2c0c854" "metadata" "--no-deps" "--format-version=1", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "inspect" "0eca6cc176933cd33cc53c95d942a278fba48e7442adb9e7a1917be42bbf6968", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "exec" "-e" "SOURCE_DIR=/opt/rustwide/workdir" "-e" "CARGO_HOME=/opt/rustwide/cargo-home" "-e" "RUSTUP_HOME=/opt/rustwide/rustup-home" "-e" "CARGO_TARGET_DIR=/opt/rustwide/target" "-e" "CARGO_INCREMENTAL=0" "-e" "RUST_BACKTRACE=full" "-e" "RUSTFLAGS=" "-e" "RUSTDOCFLAGS=" "-w" "/opt/rustwide/workdir" "--user" "0:0" "0eca6cc176933cd33cc53c95d942a278fba48e7442adb9e7a1917be42bbf6968" "/opt/rustwide/cargo-home/bin/cargo" "+622891a4e29178280638a6b63a8908bde2c0c854" "fix" "--allow-no-vcs" "--allow-dirty" "--frozen" "--all" "--all-targets" "--message-format=json" "-Zfix-edition=end=2015,2024", kill_on_drop: false }`
[INFO] [stderr] crater-edition-check: migrating to next edition
[INFO] [stderr]    Migrating app/Cargo.toml from 2021 edition to 2024
[INFO] [stderr]    Migrating admin/Cargo.toml from 2021 edition to 2024
[INFO] [stderr]    Migrating module_utils/Cargo.toml from 2021 edition to 2024
[INFO] [stderr]    Migrating features/cors/Cargo.toml from 2021 edition to 2024
[INFO] [stderr]    Migrating features/oauth2/Cargo.toml from 2021 edition to 2024
[INFO] [stderr]    Migrating features/rate_limit/Cargo.toml from 2021 edition to 2024
[INFO] [stderr]    Migrating features/waf/Cargo.toml from 2021 edition to 2024
[INFO] [stderr]    Migrating plugin_macro/Cargo.toml from 2021 edition to 2024
[INFO] [stderr]    Migrating modules/assets_css/Cargo.toml from 2021 edition to 2024
[INFO] [stderr]    Migrating modules/assets_html/Cargo.toml from 2021 edition to 2024
[INFO] [stderr]    Migrating modules/assets_js/Cargo.toml from 2021 edition to 2024
[INFO] [stderr]    Migrating modules/assets_json/Cargo.toml from 2021 edition to 2024
[INFO] [stderr]    Migrating modules/assets_text/Cargo.toml from 2021 edition to 2024
[INFO] [stderr]    Migrating modules/assets_xml/Cargo.toml from 2021 edition to 2024
[INFO] [stderr]    Migrating modules/greetings/Cargo.toml from 2021 edition to 2024
[INFO] [stderr]    Migrating modules/hello/Cargo.toml from 2021 edition to 2024
[INFO] [stderr]    Migrating modules/math/Cargo.toml from 2021 edition to 2024
[INFO] [stderr]    Compiling serde_core v1.0.228
[INFO] [stderr]    Compiling proc-macro2 v1.0.103
[INFO] [stderr]    Compiling serde_json v1.0.145
[INFO] [stderr]    Compiling memchr v2.7.6
[INFO] [stderr]     Checking futures-task v0.3.31
[INFO] [stderr]    Compiling cc v1.2.43
[INFO] [stderr]     Checking futures-channel v0.3.31
[INFO] [stderr]     Checking litemap v0.8.1
[INFO] [stderr]     Checking writeable v0.6.2
[INFO] [stderr]    Compiling icu_properties_data v2.1.1
[INFO] [stderr]    Compiling icu_normalizer_data v2.1.1
[INFO] [stderr]    Compiling openssl v0.10.75
[INFO] [stderr]     Checking regex-syntax v0.8.8
[INFO] [stderr]     Checking unicode-ident v1.0.20
[INFO] [stderr]     Checking inotify-sys v0.1.5
[INFO] [stderr]     Checking futures-util v0.3.31
[INFO] [stderr]     Checking iri-string v0.7.9
[INFO] [stderr]     Checking rustls-pki-types v1.13.0
[INFO] [stderr]     Checking inotify v0.9.6
[INFO] [stderr]     Checking crossbeam-channel v0.5.15
[INFO] [stderr]     Checking mio v0.8.11
[INFO] [stderr]     Checking filetime v0.2.26
[INFO] [stderr]     Checking tracing-log v0.2.0
[INFO] [stderr]     Checking encoding_rs v0.8.35
[INFO] [stderr]     Checking constant_time_eq v0.3.1
[INFO] [stderr]     Checking arrayvec v0.7.6
[INFO] [stderr]     Checking rate_limit v0.1.0 (/opt/rustwide/workdir/features/rate_limit)
[INFO] [stderr]    Migrating features/rate_limit/src/lib.rs from 2021 edition to 2024
[INFO] [stderr]    Compiling quote v1.0.41
[INFO] [stderr]     Checking notify v6.1.1
[INFO] [stderr]        Fixed features/rate_limit/src/lib.rs (2 fixes)
[INFO] [stderr]     Checking waf v0.1.0 (/opt/rustwide/workdir/features/waf)
[INFO] [stderr]     Checking oauth2 v0.1.0 (/opt/rustwide/workdir/features/oauth2)
[INFO] [stderr]    Migrating features/waf/src/lib.rs from 2021 edition to 2024
[INFO] [stderr]     Checking syn v2.0.108
[INFO] [stderr]     Checking similar v2.7.0
[INFO] [stderr]        Fixed features/waf/src/lib.rs (2 fixes)
[INFO] [stderr]    Migrating features/oauth2/src/lib.rs from 2021 edition to 2024
[INFO] [stderr]        Fixed features/oauth2/src/lib.rs (2 fixes)
[INFO] [stderr]    Compiling openssl-sys v0.9.111
[INFO] [stderr]    Compiling blake3 v1.8.2
[INFO] [stderr]     Checking regex-automata v0.4.13
[INFO] [stderr]    Compiling native-tls v0.2.14
[INFO] [stderr]     Checking serde_path_to_error v0.1.20
[INFO] [stderr]     Checking cors v0.1.0 (/opt/rustwide/workdir/features/cors)
[INFO] [stderr]    Migrating features/cors/src/lib.rs from 2021 edition to 2024
[INFO] [stderr]        Fixed features/cors/src/lib.rs (4 fixes)
[INFO] [stderr]     Checking matchers v0.2.0
[INFO] [stderr]     Checking plugin_macro v0.2.1 (/opt/rustwide/workdir/plugin_macro)
[INFO] [stderr]    Migrating plugin_macro/src/lib.rs from 2021 edition to 2024
[INFO] [stderr]        Fixed plugin_macro/src/lib.rs (10 fixes)
[INFO] [stderr]    Compiling synstructure v0.13.2
[INFO] [stderr]    Compiling serde_derive v1.0.228
[INFO] [stderr]    Compiling tracing-attributes v0.1.30
[INFO] [stderr]    Compiling tokio-macros v2.6.0
[INFO] [stderr]    Compiling ctor v0.2.9
[INFO] [stderr]    Compiling zerofrom-derive v0.1.6
[INFO] [stderr]    Compiling yoke-derive v0.8.1
[INFO] [stderr]    Compiling zerovec-derive v0.11.2
[INFO] [stderr]    Compiling displaydoc v0.2.5
[INFO] [stderr]    Compiling async-trait v0.1.89
[INFO] [stderr]    Compiling openssl-macros v0.1.1
[INFO] [stderr]     Checking tokio v1.48.0
[INFO] [stderr]     Checking zerofrom v0.1.6
[INFO] [stderr]     Checking tracing v0.1.41
[INFO] [stderr]     Checking yoke v0.8.1
[INFO] [stderr]     Checking zerovec v0.11.5
[INFO] [stderr]     Checking zerotrie v0.2.3
[INFO] [stderr]     Checking axum-core v0.4.5
[INFO] [stderr]     Checking tracing-subscriber v0.3.20
[INFO] [stderr]     Checking tower-http v0.5.2
[INFO] [stderr]     Checking tinystr v0.8.2
[INFO] [stderr]     Checking potential_utf v0.1.4
[INFO] [stderr]     Checking icu_collections v2.1.1
[INFO] [stderr]     Checking icu_locale_core v2.1.1
[INFO] [stderr]     Checking icu_provider v2.1.1
[INFO] [stderr]     Checking serde v1.0.228
[INFO] [stderr]     Checking icu_properties v2.1.1
[INFO] [stderr]     Checking icu_normalizer v2.1.1
[INFO] [stderr]     Checking module_utils v0.1.0 (/opt/rustwide/workdir/module_utils)
[INFO] [stderr]     Checking serde_urlencoded v0.7.1
[INFO] [stderr]     Checking chrono v0.4.42
[INFO] [stderr]    Migrating module_utils/src/lib.rs from 2021 edition to 2024
[INFO] [stderr]        Fixed module_utils/src/lib.rs (1 fix)
[INFO] [stderr]     Checking assets_html v0.1.0 (/opt/rustwide/workdir/modules/assets_html)
[INFO] [stderr]     Checking assets_json v0.1.0 (/opt/rustwide/workdir/modules/assets_json)
[INFO] [stderr]     Checking assets_text v0.1.0 (/opt/rustwide/workdir/modules/assets_text)
[INFO] [stderr]     Checking assets_css v0.1.0 (/opt/rustwide/workdir/modules/assets_css)
[INFO] [stderr]     Checking assets_xml v0.1.0 (/opt/rustwide/workdir/modules/assets_xml)
[INFO] [stderr]     Checking assets_js v0.1.0 (/opt/rustwide/workdir/modules/assets_js)
[INFO] [stderr]    Migrating modules/assets_html/src/lib.rs from 2021 edition to 2024
[INFO] [stderr]    Migrating modules/assets_css/src/lib.rs from 2021 edition to 2024
[INFO] [stderr]    Migrating modules/assets_json/src/lib.rs from 2021 edition to 2024
[INFO] [stderr]    Migrating modules/assets_text/src/lib.rs from 2021 edition to 2024
[INFO] [stderr]    Migrating modules/assets_xml/src/lib.rs from 2021 edition to 2024
[INFO] [stderr]    Migrating modules/assets_js/src/lib.rs from 2021 edition to 2024
[INFO] [stderr]     Checking idna_adapter v1.2.1
[INFO] [stderr]     Checking greetings v0.1.0 (/opt/rustwide/workdir/modules/greetings)
[INFO] [stderr]    Migrating modules/greetings/src/lib.rs from 2021 edition to 2024
[INFO] [stderr]     Checking idna v1.1.0
[INFO] [stderr]     Checking url v2.5.7
[INFO] [stderr]     Checking tokio-util v0.7.17
[INFO] [stderr]     Checking tokio-native-tls v0.3.1
[INFO] [stderr]     Checking h2 v0.4.12
[INFO] [stderr]     Checking tower v0.5.2
[INFO] [stderr]     Checking tower-http v0.6.6
[INFO] [stderr]     Checking hyper v1.7.0
[INFO] [stderr]     Checking hyper-util v0.1.17
[INFO] [stderr]     Checking axum v0.7.9
[INFO] [stderr]     Checking hyper-tls v0.6.0
[INFO] [stderr]     Checking reqwest v0.12.24
[INFO] [stderr]     Checking admin v0.1.0 (/opt/rustwide/workdir/admin)
[INFO] [stderr]     Checking hello v0.1.0 (/opt/rustwide/workdir/modules/hello)
[INFO] [stderr]     Checking math v0.1.0 (/opt/rustwide/workdir/modules/math)
[INFO] [stderr]    Migrating modules/math/src/lib.rs from 2021 edition to 2024
[INFO] [stderr]    Migrating admin/src/lib.rs from 2021 edition to 2024
[INFO] [stderr]    Migrating modules/hello/src/lib.rs from 2021 edition to 2024
[INFO] [stderr]     Checking app v0.3.0 (/opt/rustwide/workdir/app)
[INFO] [stderr]    Migrating app/src/main.rs from 2021 edition to 2024
[INFO] [stderr]        Fixed app/src/main.rs (1 fix)
[INFO] [stderr]        Fixed app/src/types.rs (2 fixes)
[INFO] [stderr]        Fixed app/src/openapi.rs (1 fix)
[INFO] [stdout] warning: relative drop order changing in Rust 2024
[INFO] [stdout]     --> app/src/watcher.rs:138:75
[INFO] [stdout]      |
[INFO] [stdout]  119 |         if let Some(ev) = rx.recv().await {
[INFO] [stdout]      |                           ---------------
[INFO] [stdout]      |                           |
[INFO] [stdout]      |                           `__awaitee` calls a custom destructor
[INFO] [stdout]      |                           `__awaitee` will be dropped later as of Edition 2024
[INFO] [stdout] ...
[INFO] [stdout]  122 |             tokio::time::sleep(Duration::from_millis(300)).await;
[INFO] [stdout]      |             ----------------------------------------------------
[INFO] [stdout]      |             |
[INFO] [stdout]      |             this value will be stored in a temporary; let us call it `#1`
[INFO] [stdout]      |             `#1` will be dropped later as of Edition 2024
[INFO] [stdout] ...
[INFO] [stdout]  126 |             *live_router.write() = build_router_from(build_path);
[INFO] [stdout]      |              -------------------
[INFO] [stdout]      |              |
[INFO] [stdout]      |              this value will be stored in a temporary; let us call it `#2`
[INFO] [stdout]      |              `#2` will be dropped later as of Edition 2024
[INFO] [stdout] ...
[INFO] [stdout]  131 |                 *spec_lock.write() = spec.clone();
[INFO] [stdout]      |                  -----------------
[INFO] [stdout]      |                  |
[INFO] [stdout]      |                  this value will be stored in a temporary; let us call it `#3`
[INFO] [stdout]      |                  `#3` will be dropped later as of Edition 2024
[INFO] [stdout] ...
[INFO] [stdout]  138 |             let spec_for_log = if let Some(spec_lock) = &live_spec { Some(spec_lock.read().clone()) } else { None };
[INFO] [stdout]      |                                                                           ^^^^^^^^^^^^^^^^          - now the temporary value is dropped here, before the local variables in the block or statement
[INFO] [stdout]      |                                                                           |
[INFO] [stdout]      |                                                                           this value will be stored in a temporary; let us call it `#4`
[INFO] [stdout]      |                                                                           up until Edition 2021 `#4` is dropped last but will be dropped earlier in Edition 2024
[INFO] [stdout]      |
[INFO] [stdout] note: `#4` invokes this custom destructor
[INFO] [stdout]     --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/lock_api-0.4.14/src/rwlock.rs:1432:1
[INFO] [stdout]      |
[INFO] [stdout] 1432 | impl<'a, R: RawRwLock + 'a, T: ?Sized + 'a> Drop for RwLockReadGuard<'a, R, T> {
[INFO] [stdout]      | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] note: `#1` invokes this custom destructor
[INFO] [stdout]     --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/pin-project-lite-0.2.16/src/lib.rs:1313:9
[INFO] [stdout]      |
[INFO] [stdout] 1313 | /         impl $(<
[INFO] [stdout] 1314 | |             $( $lifetime $(: $lifetime_bound)? ,)*
[INFO] [stdout] 1315 | |             $( $generics
[INFO] [stdout] 1316 | |                 $(: $generics_bound)?
[INFO] [stdout] ...    |
[INFO] [stdout] 1319 | |             ),*
[INFO] [stdout] 1320 | |         >)? $crate::__private::Drop for $self_ty
[INFO] [stdout]      | |________________________________________________^
[INFO] [stdout]      |
[INFO] [stdout]     ::: /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/tokio-1.48.0/src/runtime/time/entry.rs:280:1
[INFO] [stdout]      |
[INFO] [stdout]  280 | / pin_project! {
[INFO] [stdout] ...    |
[INFO] [stdout]  310 | | }
[INFO] [stdout]      | |_- in this macro invocation
[INFO] [stdout] note: `#2` invokes this custom destructor
[INFO] [stdout]     --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/lock_api-0.4.14/src/rwlock.rs:1827:1
[INFO] [stdout]      |
[INFO] [stdout] 1827 | impl<'a, R: RawRwLock + 'a, T: ?Sized + 'a> Drop for RwLockWriteGuard<'a, R, T> {
[INFO] [stdout]      | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] note: `#3` invokes this custom destructor
[INFO] [stdout]     --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/lock_api-0.4.14/src/rwlock.rs:1827:1
[INFO] [stdout]      |
[INFO] [stdout] 1827 | impl<'a, R: RawRwLock + 'a, T: ?Sized + 'a> Drop for RwLockWriteGuard<'a, R, T> {
[INFO] [stdout]      | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]      = note: most of the time, changing drop order is harmless; inspect the `impl Drop`s for side effects like releasing locks or sending messages
[INFO] [stdout]      = warning: this changes meaning in Rust 2024
[INFO] [stdout]      = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/temporary-tail-expr-scope.html>
[INFO] [stdout]      = note: `--force-warn tail-expr-drop-order` implied by `--force-warn rust-2024-compatibility`
[INFO] [stdout]      = note: this warning originates in the macro `$crate::__pin_project_make_drop_impl` which comes from the expansion of the macro `pin_project` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: relative drop order changing in Rust 2024
[INFO] [stdout]    --> app/src/dynamic_loader.rs:43:27
[INFO] [stdout]     |
[INFO] [stdout]  43 |                     match Library::new(p) {
[INFO] [stdout]     |                           ^^^^^^^^^^^^^^^
[INFO] [stdout]     |                           |
[INFO] [stdout]     |                           this value will be stored in a temporary; let us call it `#1`
[INFO] [stdout]     |                           up until Edition 2021 `#1` is dropped last but will be dropped earlier in Edition 2024
[INFO] [stdout]  44 |                         Ok(lib) => {
[INFO] [stdout]     |                            ---
[INFO] [stdout]     |                            |
[INFO] [stdout]     |                            `lib` calls a custom destructor
[INFO] [stdout]     |                            `lib` will be dropped later as of Edition 2024
[INFO] [stdout] ...
[INFO] [stdout] 164 |             }
[INFO] [stdout]     |             - now the temporary value is dropped here, before the local variables in the block or statement
[INFO] [stdout]     |
[INFO] [stdout] note: `#1` invokes this custom destructor
[INFO] [stdout]    --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/libloading-0.8.9/src/os/unix/mod.rs:372:1
[INFO] [stdout]     |
[INFO] [stdout] 372 | impl Drop for Library {
[INFO] [stdout]     | ^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] note: `lib` invokes this custom destructor
[INFO] [stdout]    --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/libloading-0.8.9/src/os/unix/mod.rs:372:1
[INFO] [stdout]     |
[INFO] [stdout] 372 | impl Drop for Library {
[INFO] [stdout]     | ^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     = note: most of the time, changing drop order is harmless; inspect the `impl Drop`s for side effects like releasing locks or sending messages
[INFO] [stdout]     = warning: this changes meaning in Rust 2024
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/temporary-tail-expr-scope.html>
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: relative drop order changing in Rust 2024
[INFO] [stdout]     --> app/src/watcher.rs:138:75
[INFO] [stdout]      |
[INFO] [stdout]  119 |         if let Some(ev) = rx.recv().await {
[INFO] [stdout]      |                           ---------------
[INFO] [stdout]      |                           |
[INFO] [stdout]      |                           `__awaitee` calls a custom destructor
[INFO] [stdout]      |                           `__awaitee` will be dropped later as of Edition 2024
[INFO] [stdout] ...
[INFO] [stdout]  122 |             tokio::time::sleep(Duration::from_millis(300)).await;
[INFO] [stdout]      |             ----------------------------------------------------
[INFO] [stdout]      |             |
[INFO] [stdout]      |             this value will be stored in a temporary; let us call it `#1`
[INFO] [stdout]      |             `#1` will be dropped later as of Edition 2024
[INFO] [stdout] ...
[INFO] [stdout]  126 |             *live_router.write() = build_router_from(build_path);
[INFO] [stdout]      |              -------------------
[INFO] [stdout]      |              |
[INFO] [stdout]      |              this value will be stored in a temporary; let us call it `#2`
[INFO] [stdout]      |              `#2` will be dropped later as of Edition 2024
[INFO] [stdout] ...
[INFO] [stdout]  131 |                 *spec_lock.write() = spec.clone();
[INFO] [stdout]      |                  -----------------
[INFO] [stdout]      |                  |
[INFO] [stdout]      |                  this value will be stored in a temporary; let us call it `#3`
[INFO] [stdout]      |                  `#3` will be dropped later as of Edition 2024
[INFO] [stdout] ...
[INFO] [stdout]  138 |             let spec_for_log = if let Some(spec_lock) = &live_spec { Some(spec_lock.read().clone()) } else { None };
[INFO] [stdout]      |                                                                           ^^^^^^^^^^^^^^^^          - now the temporary value is dropped here, before the local variables in the block or statement
[INFO] [stdout]      |                                                                           |
[INFO] [stdout]      |                                                                           this value will be stored in a temporary; let us call it `#4`
[INFO] [stdout]      |                                                                           up until Edition 2021 `#4` is dropped last but will be dropped earlier in Edition 2024
[INFO] [stdout]      |
[INFO] [stdout] note: `#4` invokes this custom destructor
[INFO] [stdout]     --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/lock_api-0.4.14/src/rwlock.rs:1432:1
[INFO] [stdout]      |
[INFO] [stdout] 1432 | impl<'a, R: RawRwLock + 'a, T: ?Sized + 'a> Drop for RwLockReadGuard<'a, R, T> {
[INFO] [stdout]      | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] note: `#1` invokes this custom destructor
[INFO] [stdout]     --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/pin-project-lite-0.2.16/src/lib.rs:1313:9
[INFO] [stdout]      |
[INFO] [stdout] 1313 | /         impl $(<
[INFO] [stdout] 1314 | |             $( $lifetime $(: $lifetime_bound)? ,)*
[INFO] [stdout] 1315 | |             $( $generics
[INFO] [stdout] 1316 | |                 $(: $generics_bound)?
[INFO] [stdout] ...    |
[INFO] [stdout] 1319 | |             ),*
[INFO] [stdout] 1320 | |         >)? $crate::__private::Drop for $self_ty
[INFO] [stdout]      | |________________________________________________^
[INFO] [stdout]      |
[INFO] [stdout]     ::: /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/tokio-1.48.0/src/runtime/time/entry.rs:280:1
[INFO] [stdout]      |
[INFO] [stdout]  280 | / pin_project! {
[INFO] [stdout] ...    |
[INFO] [stdout]  310 | | }
[INFO] [stdout]      | |_- in this macro invocation
[INFO] [stdout] note: `#2` invokes this custom destructor
[INFO] [stdout]     --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/lock_api-0.4.14/src/rwlock.rs:1827:1
[INFO] [stdout]      |
[INFO] [stdout] 1827 | impl<'a, R: RawRwLock + 'a, T: ?Sized + 'a> Drop for RwLockWriteGuard<'a, R, T> {
[INFO] [stdout]      | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] note: `#3` invokes this custom destructor
[INFO] [stdout]     --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/lock_api-0.4.14/src/rwlock.rs:1827:1
[INFO] [stdout]      |
[INFO] [stdout] 1827 | impl<'a, R: RawRwLock + 'a, T: ?Sized + 'a> Drop for RwLockWriteGuard<'a, R, T> {
[INFO] [stdout]      | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]      = note: most of the time, changing drop order is harmless; inspect the `impl Drop`s for side effects like releasing locks or sending messages
[INFO] [stdout]      = warning: this changes meaning in Rust 2024
[INFO] [stdout]      = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/temporary-tail-expr-scope.html>
[INFO] [stdout]      = note: `--force-warn tail-expr-drop-order` implied by `--force-warn rust-2024-compatibility`
[INFO] [stdout]      = note: this warning originates in the macro `$crate::__pin_project_make_drop_impl` which comes from the expansion of the macro `pin_project` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stderr]     Finished `dev` profile [unoptimized + debuginfo] target(s) in 58.07s
[INFO] [stdout] warning: relative drop order changing in Rust 2024
[INFO] [stdout]    --> app/src/dynamic_loader.rs:43:27
[INFO] [stdout]     |
[INFO] [stdout]  43 |                     match Library::new(p) {
[INFO] [stdout]     |                           ^^^^^^^^^^^^^^^
[INFO] [stdout]     |                           |
[INFO] [stdout]     |                           this value will be stored in a temporary; let us call it `#1`
[INFO] [stdout]     |                           up until Edition 2021 `#1` is dropped last but will be dropped earlier in Edition 2024
[INFO] [stdout]  44 |                         Ok(lib) => {
[INFO] [stdout]     |                            ---
[INFO] [stdout]     |                            |
[INFO] [stdout]     |                            `lib` calls a custom destructor
[INFO] [stdout]     |                            `lib` will be dropped later as of Edition 2024
[INFO] [stdout] ...
[INFO] [stdout] 164 |             }
[INFO] [stdout]     |             - now the temporary value is dropped here, before the local variables in the block or statement
[INFO] [stdout]     |
[INFO] [stdout] note: `#1` invokes this custom destructor
[INFO] [stdout]    --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/libloading-0.8.9/src/os/unix/mod.rs:372:1
[INFO] [stdout]     |
[INFO] [stdout] 372 | impl Drop for Library {
[INFO] [stdout]     | ^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] note: `lib` invokes this custom destructor
[INFO] [stdout]    --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/libloading-0.8.9/src/os/unix/mod.rs:372:1
[INFO] [stdout]     |
[INFO] [stdout] 372 | impl Drop for Library {
[INFO] [stdout]     | ^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     = note: most of the time, changing drop order is harmless; inspect the `impl Drop`s for side effects like releasing locks or sending messages
[INFO] [stdout]     = warning: this changes meaning in Rust 2024
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/temporary-tail-expr-scope.html>
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stderr] crater-edition-check: app v0.3.0 (/opt/rustwide/workdir/app) updating edition from 2021 to 2024
[INFO] [stderr] crater-edition-check: admin v0.1.0 (/opt/rustwide/workdir/admin) updating edition from 2021 to 2024
[INFO] [stderr] crater-edition-check: module_utils v0.1.0 (/opt/rustwide/workdir/module_utils) updating edition from 2021 to 2024
[INFO] [stderr] crater-edition-check: cors v0.1.0 (/opt/rustwide/workdir/features/cors) updating edition from 2021 to 2024
[INFO] [stderr] crater-edition-check: oauth2 v0.1.0 (/opt/rustwide/workdir/features/oauth2) updating edition from 2021 to 2024
[INFO] [stderr] crater-edition-check: rate_limit v0.1.0 (/opt/rustwide/workdir/features/rate_limit) updating edition from 2021 to 2024
[INFO] [stderr] crater-edition-check: waf v0.1.0 (/opt/rustwide/workdir/features/waf) updating edition from 2021 to 2024
[INFO] [stderr] crater-edition-check: plugin_macro v0.2.1 (/opt/rustwide/workdir/plugin_macro) updating edition from 2021 to 2024
[INFO] [stderr] crater-edition-check: assets_css v0.1.0 (/opt/rustwide/workdir/modules/assets_css) updating edition from 2021 to 2024
[INFO] [stderr] crater-edition-check: assets_html v0.1.0 (/opt/rustwide/workdir/modules/assets_html) updating edition from 2021 to 2024
[INFO] [stderr] crater-edition-check: assets_js v0.1.0 (/opt/rustwide/workdir/modules/assets_js) updating edition from 2021 to 2024
[INFO] [stderr] crater-edition-check: assets_json v0.1.0 (/opt/rustwide/workdir/modules/assets_json) updating edition from 2021 to 2024
[INFO] [stderr] crater-edition-check: assets_text v0.1.0 (/opt/rustwide/workdir/modules/assets_text) updating edition from 2021 to 2024
[INFO] [stderr] crater-edition-check: assets_xml v0.1.0 (/opt/rustwide/workdir/modules/assets_xml) updating edition from 2021 to 2024
[INFO] [stderr] crater-edition-check: greetings v0.1.0 (/opt/rustwide/workdir/modules/greetings) updating edition from 2021 to 2024
[INFO] [stderr] crater-edition-check: hello v0.1.0 (/opt/rustwide/workdir/modules/hello) updating edition from 2021 to 2024
[INFO] [stderr] crater-edition-check: math v0.1.0 (/opt/rustwide/workdir/modules/math) updating edition from 2021 to 2024
[INFO] [stderr]     Checking module_utils v0.1.0 (/opt/rustwide/workdir/module_utils)
[INFO] [stderr]    Compiling plugin_macro v0.2.1 (/opt/rustwide/workdir/plugin_macro)
[INFO] [stderr]     Checking rate_limit v0.1.0 (/opt/rustwide/workdir/features/rate_limit)
[INFO] [stderr]     Checking cors v0.1.0 (/opt/rustwide/workdir/features/cors)
[INFO] [stderr]     Checking oauth2 v0.1.0 (/opt/rustwide/workdir/features/oauth2)
[INFO] [stderr]     Checking waf v0.1.0 (/opt/rustwide/workdir/features/waf)
[INFO] [stderr]     Checking admin v0.1.0 (/opt/rustwide/workdir/admin)
[INFO] [stderr]     Checking app v0.3.0 (/opt/rustwide/workdir/app)
[INFO] [stdout] warning: unused import: `std::path::PathBuf`
[INFO] [stdout]   --> app/src/main.rs:19:5
[INFO] [stdout]    |
[INFO] [stdout] 19 | use std::path::PathBuf;
[INFO] [stdout]    |     ^^^^^^^^^^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: `#[warn(unused_imports)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `walkdir::WalkDir`
[INFO] [stdout]   --> app/src/main.rs:20:5
[INFO] [stdout]    |
[INFO] [stdout] 20 | use walkdir::WalkDir;
[INFO] [stdout]    |     ^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stderr]     Checking hello v0.1.0 (/opt/rustwide/workdir/modules/hello)
[INFO] [stderr]     Checking assets_js v0.1.0 (/opt/rustwide/workdir/modules/assets_js)
[INFO] [stderr]     Checking assets_json v0.1.0 (/opt/rustwide/workdir/modules/assets_json)
[INFO] [stderr]     Checking assets_xml v0.1.0 (/opt/rustwide/workdir/modules/assets_xml)
[INFO] [stderr]     Checking math v0.1.0 (/opt/rustwide/workdir/modules/math)
[INFO] [stderr]     Checking assets_css v0.1.0 (/opt/rustwide/workdir/modules/assets_css)
[INFO] [stderr]     Checking assets_html v0.1.0 (/opt/rustwide/workdir/modules/assets_html)
[INFO] [stderr]     Checking greetings v0.1.0 (/opt/rustwide/workdir/modules/greetings)
[INFO] [stderr]     Checking assets_text v0.1.0 (/opt/rustwide/workdir/modules/assets_text)
[INFO] [stdout] warning: unused import: `std::path::PathBuf`
[INFO] [stdout]   --> app/src/main.rs:19:5
[INFO] [stdout]    |
[INFO] [stdout] 19 | use std::path::PathBuf;
[INFO] [stdout]    |     ^^^^^^^^^^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: `#[warn(unused_imports)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `walkdir::WalkDir`
[INFO] [stdout]   --> app/src/main.rs:20:5
[INFO] [stdout]    |
[INFO] [stdout] 20 | use walkdir::WalkDir;
[INFO] [stdout]    |     ^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: unsafe attribute used without unsafe
[INFO] [stdout]  --> modules/assets_json/src/lib.rs:5:1
[INFO] [stdout]   |
[INFO] [stdout] 5 | #[def_get("/assets/data.json")]
[INFO] [stdout]   | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ usage of unsafe attribute
[INFO] [stdout]   |
[INFO] [stdout]   = note: this error originates in the attribute macro `def_get` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: unsafe attribute used without unsafe
[INFO] [stdout]   --> modules/assets_json/src/lib.rs:11:1
[INFO] [stdout]    |
[INFO] [stdout] 11 | declare_routes!();
[INFO] [stdout]    | ^^^^^^^^^^^^^^^^^ usage of unsafe attribute
[INFO] [stdout]    |
[INFO] [stdout]    = note: this error originates in the macro `declare_routes` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: unsafe attribute used without unsafe
[INFO] [stdout]  --> modules/assets_xml/src/lib.rs:4:1
[INFO] [stdout]   |
[INFO] [stdout] 4 | #[def_get("/assets/data.xml")]
[INFO] [stdout]   | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ usage of unsafe attribute
[INFO] [stdout]   |
[INFO] [stdout]   = note: this error originates in the attribute macro `def_get` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: unsafe attribute used without unsafe
[INFO] [stdout]  --> modules/assets_xml/src/lib.rs:9:1
[INFO] [stdout]   |
[INFO] [stdout] 9 | declare_routes!();
[INFO] [stdout]   | ^^^^^^^^^^^^^^^^^ usage of unsafe attribute
[INFO] [stdout]   |
[INFO] [stdout]   = note: this error originates in the macro `declare_routes` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: unsafe attribute used without unsafe
[INFO] [stdout]  --> modules/assets_html/src/lib.rs:3:1
[INFO] [stdout]   |
[INFO] [stdout] 3 | #[def_get("/assets/index.html")]
[INFO] [stdout]   | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ usage of unsafe attribute
[INFO] [stdout]   |
[INFO] [stdout]   = note: this error originates in the attribute macro `def_get` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: unsafe attribute used without unsafe
[INFO] [stdout]  --> modules/hello/src/lib.rs:4:1
[INFO] [stdout]   |
[INFO] [stdout] 4 | #[def_get("/api/hello")]
[INFO] [stdout]   | ^^^^^^^^^^^^^^^^^^^^^^^^ usage of unsafe attribute
[INFO] [stdout]   |
[INFO] [stdout]   = note: this error originates in the attribute macro `def_get` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: unsafe attribute used without unsafe
[INFO] [stdout]  --> modules/assets_html/src/lib.rs:8:1
[INFO] [stdout]   |
[INFO] [stdout] 8 | declare_routes!();
[INFO] [stdout]   | ^^^^^^^^^^^^^^^^^ usage of unsafe attribute
[INFO] [stdout]   |
[INFO] [stdout]   = note: this error originates in the macro `declare_routes` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: unsafe attribute used without unsafe
[INFO] [stdout]   --> modules/hello/src/lib.rs:12:1
[INFO] [stdout]    |
[INFO] [stdout] 12 | declare_routes!();
[INFO] [stdout]    | ^^^^^^^^^^^^^^^^^ usage of unsafe attribute
[INFO] [stdout]    |
[INFO] [stdout]    = note: this error originates in the macro `declare_routes` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: unsafe attribute used without unsafe
[INFO] [stdout]  --> modules/hello/src/lib.rs:4:1
[INFO] [stdout]   |
[INFO] [stdout] 4 | #[def_get("/api/hello")]
[INFO] [stdout]   | ^^^^^^^^^^^^^^^^^^^^^^^^ usage of unsafe attribute
[INFO] [stdout]   |
[INFO] [stdout]   = note: this error originates in the attribute macro `def_get` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: unsafe attribute used without unsafe
[INFO] [stdout]   --> modules/hello/src/lib.rs:12:1
[INFO] [stdout]    |
[INFO] [stdout] 12 | declare_routes!();
[INFO] [stdout]    | ^^^^^^^^^^^^^^^^^ usage of unsafe attribute
[INFO] [stdout]    |
[INFO] [stdout]    = note: this error originates in the macro `declare_routes` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stderr] error: could not compile `assets_html` (lib test) due to 2 previous errors
[INFO] [stderr] warning: build failed, waiting for other jobs to finish...
[INFO] [stdout] error: unsafe attribute used without unsafe
[INFO] [stdout]  --> modules/math/src/lib.rs:4:1
[INFO] [stdout]   |
[INFO] [stdout] 4 | #[def_get("/ping")]
[INFO] [stdout]   | ^^^^^^^^^^^^^^^^^^^ usage of unsafe attribute
[INFO] [stdout]   |
[INFO] [stdout]   = note: this error originates in the attribute macro `def_get` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: unsafe attribute used without unsafe
[INFO] [stdout]  --> modules/math/src/lib.rs:9:1
[INFO] [stdout]   |
[INFO] [stdout] 9 | declare_routes!();
[INFO] [stdout]   | ^^^^^^^^^^^^^^^^^ usage of unsafe attribute
[INFO] [stdout]   |
[INFO] [stdout]   = note: this error originates in the macro `declare_routes` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: unsafe attribute used without unsafe
[INFO] [stdout]  --> modules/assets_html/src/lib.rs:3:1
[INFO] [stdout]   |
[INFO] [stdout] 3 | #[def_get("/assets/index.html")]
[INFO] [stdout]   | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ usage of unsafe attribute
[INFO] [stdout]   |
[INFO] [stdout]   = note: this error originates in the attribute macro `def_get` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: unsafe attribute used without unsafe
[INFO] [stdout]  --> modules/assets_html/src/lib.rs:8:1
[INFO] [stdout]   |
[INFO] [stdout] 8 | declare_routes!();
[INFO] [stdout]   | ^^^^^^^^^^^^^^^^^ usage of unsafe attribute
[INFO] [stdout]   |
[INFO] [stdout]   = note: this error originates in the macro `declare_routes` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stderr] error: could not compile `hello` (lib) due to 2 previous errors
[INFO] [stderr] error: could not compile `assets_json` (lib) due to 2 previous errors
[INFO] [stderr] error: could not compile `hello` (lib test) due to 2 previous errors
[INFO] [stderr] error: could not compile `assets_xml` (lib test) due to 2 previous errors
[INFO] [stderr] error: could not compile `math` (lib test) due to 2 previous errors
[INFO] [stdout] error: unsafe attribute used without unsafe
[INFO] [stdout]  --> modules/assets_json/src/lib.rs:5:1
[INFO] [stdout]   |
[INFO] [stdout] 5 | #[def_get("/assets/data.json")]
[INFO] [stdout]   | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ usage of unsafe attribute
[INFO] [stdout]   |
[INFO] [stdout]   = note: this error originates in the attribute macro `def_get` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: unsafe attribute used without unsafe
[INFO] [stdout]  --> modules/assets_js/src/lib.rs:3:1
[INFO] [stdout]   |
[INFO] [stdout] 3 | #[def_get("/assets/app.js")]
[INFO] [stdout]   | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^ usage of unsafe attribute
[INFO] [stdout]   |
[INFO] [stdout]   = note: this error originates in the attribute macro `def_get` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: unsafe attribute used without unsafe
[INFO] [stdout]  --> modules/assets_js/src/lib.rs:8:1
[INFO] [stdout]   |
[INFO] [stdout] 8 | declare_routes!();
[INFO] [stdout]   | ^^^^^^^^^^^^^^^^^ usage of unsafe attribute
[INFO] [stdout]   |
[INFO] [stdout]   = note: this error originates in the macro `declare_routes` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: unsafe attribute used without unsafe
[INFO] [stdout]   --> modules/assets_json/src/lib.rs:11:1
[INFO] [stdout]    |
[INFO] [stdout] 11 | declare_routes!();
[INFO] [stdout]    | ^^^^^^^^^^^^^^^^^ usage of unsafe attribute
[INFO] [stdout]    |
[INFO] [stdout]    = note: this error originates in the macro `declare_routes` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: unsafe attribute used without unsafe
[INFO] [stdout]  --> modules/assets_js/src/lib.rs:3:1
[INFO] [stdout]   |
[INFO] [stdout] 3 | #[def_get("/assets/app.js")]
[INFO] [stdout]   | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^ usage of unsafe attribute
[INFO] [stdout]   |
[INFO] [stdout]   = note: this error originates in the attribute macro `def_get` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: unsafe attribute used without unsafe
[INFO] [stdout]  --> modules/assets_js/src/lib.rs:8:1
[INFO] [stdout]   |
[INFO] [stdout] 8 | declare_routes!();
[INFO] [stdout]   | ^^^^^^^^^^^^^^^^^ usage of unsafe attribute
[INFO] [stdout]   |
[INFO] [stdout]   = note: this error originates in the macro `declare_routes` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: unsafe attribute used without unsafe
[INFO] [stdout]  --> modules/assets_css/src/lib.rs:3:1
[INFO] [stdout]   |
[INFO] [stdout] 3 | #[def_get("/assets/app.css")]
[INFO] [stdout]   | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ usage of unsafe attribute
[INFO] [stdout]   |
[INFO] [stdout]   = note: this error originates in the attribute macro `def_get` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: unsafe attribute used without unsafe
[INFO] [stdout]  --> modules/assets_css/src/lib.rs:8:1
[INFO] [stdout]   |
[INFO] [stdout] 8 | declare_routes!();
[INFO] [stdout]   | ^^^^^^^^^^^^^^^^^ usage of unsafe attribute
[INFO] [stdout]   |
[INFO] [stdout]   = note: this error originates in the macro `declare_routes` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: unsafe attribute used without unsafe
[INFO] [stdout]  --> modules/greetings/src/lib.rs:5:1
[INFO] [stdout]   |
[INFO] [stdout] 5 | #[def_get("/greet/hi")]
[INFO] [stdout]   | ^^^^^^^^^^^^^^^^^^^^^^^ usage of unsafe attribute
[INFO] [stdout]   |
[INFO] [stdout]   = note: this error originates in the attribute macro `def_get` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stderr] error: could not compile `assets_html` (lib) due to 2 previous errors
[INFO] [stdout] error: unsafe attribute used without unsafe
[INFO] [stdout]   --> modules/greetings/src/lib.rs:10:1
[INFO] [stdout]    |
[INFO] [stdout] 10 | #[def_get("/greet/bye")]
[INFO] [stdout]    | ^^^^^^^^^^^^^^^^^^^^^^^^ usage of unsafe attribute
[INFO] [stdout]    |
[INFO] [stdout]    = note: this error originates in the attribute macro `def_get` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: unsafe attribute used without unsafe
[INFO] [stdout]   --> modules/greetings/src/lib.rs:15:1
[INFO] [stdout]    |
[INFO] [stdout] 15 | #[def_get("/greet/html")]
[INFO] [stdout]    | ^^^^^^^^^^^^^^^^^^^^^^^^^ usage of unsafe attribute
[INFO] [stdout]    |
[INFO] [stdout]    = note: this error originates in the attribute macro `def_get` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: unsafe attribute used without unsafe
[INFO] [stdout]   --> modules/greetings/src/lib.rs:53:1
[INFO] [stdout]    |
[INFO] [stdout] 53 | #[def_get("/greet/info")]
[INFO] [stdout]    | ^^^^^^^^^^^^^^^^^^^^^^^^^ usage of unsafe attribute
[INFO] [stdout]    |
[INFO] [stdout]    = note: this error originates in the attribute macro `def_get` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: unsafe attribute used without unsafe
[INFO] [stdout]   --> modules/greetings/src/lib.rs:69:1
[INFO] [stdout]    |
[INFO] [stdout] 69 | #[def_post("/greet/user")]
[INFO] [stdout]    | ^^^^^^^^^^^^^^^^^^^^^^^^^^ usage of unsafe attribute
[INFO] [stdout]    |
[INFO] [stdout]    = note: this error originates in the attribute macro `def_post` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: unsafe attribute used without unsafe
[INFO] [stdout]    --> modules/greetings/src/lib.rs:104:1
[INFO] [stdout]     |
[INFO] [stdout] 104 | #[def_put("/greet/message")]
[INFO] [stdout]     | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^ usage of unsafe attribute
[INFO] [stdout]     |
[INFO] [stdout]     = note: this error originates in the attribute macro `def_put` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: unsafe attribute used without unsafe
[INFO] [stdout]    --> modules/greetings/src/lib.rs:144:1
[INFO] [stdout]     |
[INFO] [stdout] 144 | #[def_delete("/greet/reset")]
[INFO] [stdout]     | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ usage of unsafe attribute
[INFO] [stdout]     |
[INFO] [stdout]     = note: this error originates in the attribute macro `def_delete` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: unsafe attribute used without unsafe
[INFO] [stdout]    --> modules/greetings/src/lib.rs:189:1
[INFO] [stdout]     |
[INFO] [stdout] 189 | declare_routes!();
[INFO] [stdout]     | ^^^^^^^^^^^^^^^^^ usage of unsafe attribute
[INFO] [stdout]     |
[INFO] [stdout]     = note: this error originates in the macro `declare_routes` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stderr] error: could not compile `assets_js` (lib test) due to 2 previous errors
[INFO] [stdout] error: unsafe attribute used without unsafe
[INFO] [stdout]  --> modules/assets_text/src/lib.rs:4:1
[INFO] [stdout]   |
[INFO] [stdout] 4 | #[def_get("/assets/text")]
[INFO] [stdout]   | ^^^^^^^^^^^^^^^^^^^^^^^^^^ usage of unsafe attribute
[INFO] [stdout]   |
[INFO] [stdout]   = note: this error originates in the attribute macro `def_get` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: unsafe attribute used without unsafe
[INFO] [stdout]  --> modules/assets_text/src/lib.rs:9:1
[INFO] [stdout]   |
[INFO] [stdout] 9 | declare_routes!();
[INFO] [stdout]   | ^^^^^^^^^^^^^^^^^ usage of unsafe attribute
[INFO] [stdout]   |
[INFO] [stdout]   = note: this error originates in the macro `declare_routes` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stderr] error: could not compile `assets_js` (lib) due to 2 previous errors
[INFO] [stderr] error: could not compile `assets_json` (lib test) due to 2 previous errors
[INFO] [stderr] error: could not compile `assets_css` (lib) due to 2 previous errors
[INFO] [stderr] error: could not compile `assets_text` (lib test) due to 2 previous errors
[INFO] [stdout] error: unsafe attribute used without unsafe
[INFO] [stdout]  --> modules/assets_xml/src/lib.rs:4:1
[INFO] [stdout]   |
[INFO] [stdout] 4 | #[def_get("/assets/data.xml")]
[INFO] [stdout]   | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ usage of unsafe attribute
[INFO] [stdout]   |
[INFO] [stdout]   = note: this error originates in the attribute macro `def_get` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: unsafe attribute used without unsafe
[INFO] [stdout]  --> modules/assets_xml/src/lib.rs:9:1
[INFO] [stdout]   |
[INFO] [stdout] 9 | declare_routes!();
[INFO] [stdout]   | ^^^^^^^^^^^^^^^^^ usage of unsafe attribute
[INFO] [stdout]   |
[INFO] [stdout]   = note: this error originates in the macro `declare_routes` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stderr] error: could not compile `greetings` (lib test) due to 8 previous errors
[INFO] [stderr] error: could not compile `assets_xml` (lib) due to 2 previous errors
[INFO] [stdout] warning: unused variable: `settings`
[INFO] [stdout]    --> app/src/features_loader.rs:130:9
[INFO] [stdout]     |
[INFO] [stdout] 130 |     let settings = load_settings();
[INFO] [stdout]     |         ^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_settings`
[INFO] [stdout]     |
[INFO] [stdout]     = note: `#[warn(unused_variables)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `settings`
[INFO] [stdout]    --> app/src/features_loader.rs:130:9
[INFO] [stdout]     |
[INFO] [stdout] 130 |     let settings = load_settings();
[INFO] [stdout]     |         ^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_settings`
[INFO] [stdout]     |
[INFO] [stdout]     = note: `#[warn(unused_variables)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable does not need to be mutable
[INFO] [stdout]    --> app/src/main.rs:109:9
[INFO] [stdout]     |
[INFO] [stdout] 109 |     let mut app = Router::new()
[INFO] [stdout]     |         ----^^^
[INFO] [stdout]     |         |
[INFO] [stdout]     |         help: remove this `mut`
[INFO] [stdout]     |
[INFO] [stdout]     = note: `#[warn(unused_mut)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `settings`
[INFO] [stdout]   --> app/src/main.rs:96:9
[INFO] [stdout]    |
[INFO] [stdout] 96 |     let settings = load_settings();
[INFO] [stdout]    |         ^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_settings`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `generate_readme_via_autoreadme` is never used
[INFO] [stdout]    --> app/src/main.rs:186:10
[INFO] [stdout]     |
[INFO] [stdout] 186 | async fn generate_readme_via_autoreadme() -> Result<(), Box<dyn std::error::Error>> {
[INFO] [stdout]     |          ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = note: `#[warn(dead_code)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable does not need to be mutable
[INFO] [stdout]    --> app/src/main.rs:109:9
[INFO] [stdout]     |
[INFO] [stdout] 109 |     let mut app = Router::new()
[INFO] [stdout]     |         ----^^^
[INFO] [stdout]     |         |
[INFO] [stdout]     |         help: remove this `mut`
[INFO] [stdout]     |
[INFO] [stdout]     = note: `#[warn(unused_mut)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `settings`
[INFO] [stdout]   --> app/src/main.rs:96:9
[INFO] [stdout]    |
[INFO] [stdout] 96 |     let settings = load_settings();
[INFO] [stdout]    |         ^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_settings`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `generate_readme_via_autoreadme` is never used
[INFO] [stdout]    --> app/src/main.rs:186:10
[INFO] [stdout]     |
[INFO] [stdout] 186 | async fn generate_readme_via_autoreadme() -> Result<(), Box<dyn std::error::Error>> {
[INFO] [stdout]     |          ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = note: `#[warn(dead_code)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] running `Command { std: "docker" "inspect" "0eca6cc176933cd33cc53c95d942a278fba48e7442adb9e7a1917be42bbf6968", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "rm" "-f" "0eca6cc176933cd33cc53c95d942a278fba48e7442adb9e7a1917be42bbf6968", kill_on_drop: false }`
[INFO] [stdout] 0eca6cc176933cd33cc53c95d942a278fba48e7442adb9e7a1917be42bbf6968
